// timeNum为计时器显示数字
// timerID为计时器ID
var timeNum=60,timerID;
Page({
  data:{
    time:timeNum,
    startFlag:false, // 启动小程序时'开始计时'按钮可用
    stopFlag:true // 启动小程序时'停止计时'按钮不可用
  },
  focus:function(){
    if(timerID!=null)
      clearInterval(timerID);
    // 输入框聚焦时两个按钮不可用
    this.setData({
      tmpStyle:'border-bottom: 2px solid rgb(0, 242, 255)',// 得到焦点时，变成蓝色
      val:"",
      startFlag:true, // 不可用
      stopFlag:true // 不可用
    });
  },
  clac:function(e){
    if(e.detail.value==""){
      timeNum=60;
    }else{
      timeNum=parseInt(e.detail.value);
    }
    if(timeNum<10){
      this.setData({
        time:'0'+timeNum
      });
    }else{
      this.setData({
        time:timeNum+""
      })
    }
    clearInterval(timerID);
    this.setData({
      tmpStyle:'', // 失去焦点时，恢复默认颜色
      startFlag:false, // 可用
      stopFlag:true // 不可用
    });
  },
  start:function(){ // 开始计时
    var that=this; // 把对象先赋值给that
    timerID=setInterval(()=>{
      that.timer()
    },1000); // 每隔1s调用一次timer函数
    that.setData({
      startFlag:true, // 不可用
      stopFlag:false //可用
    });
  },
  stop:function(){
    clearInterval(timerID);// 清除计时器
    this.setData({
      startFlag:false, // 可用
      stopFlag:true //不可用
    });
  },
  timer:function(){
    var that=this;
    console.log(timeNum);
    if(parseInt(timeNum)>0&parseInt(timeNum)<10){
      that.setData({
        time:'0'+(timeNum--)
      });
    }else if(parseInt(timeNum)<=0){
      that.stop();// 显示0的时候，计时器结束
      that.setData({
        time:"00",
        startFlag:true // 计时完毕后，两个按钮不可用
      });
    }else{
      that.setData({
        time:timeNum-- + ""
      })
    }
  },
  onHide:function(){
    // 如果正在计时，但是切换了屏幕->计时暂停
    if(timerID!=null){
      this.stop();
    }
  }
})